home *** CD-ROM | disk | FTP | other *** search
/ Skandinavian News 7 / Skandinavian News - Issue 7 (1989-01)(Accession)[h Amiga Hackers United].adf / Quick.doc < prev    next >
Text File  |  2001-01-19  |  5KB  |  223 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.         $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  20.         $$                     $$
  21.         $$  Manx Aztec C 3.6a  Quick Manual  $$
  22.         $$                     $$
  23.         $$      by Wyzinsky the Horrible     $$
  24.         $$                     $$
  25.         $$        No rights reserved.         $$
  26.         $$   Feel free to share and enjoy!   $$
  27.         $$  (pleze ignore spelling errors!)  $$
  28.         $$                     $$
  29.         $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  30.  
  31.  
  32. Compiler: cc
  33.  
  34. Compile your program modules by
  35.  
  36. cc [options] prog.c 
  37.  
  38. Compiler options
  39.  
  40. -A        Does not start the assembler when compilation is done.
  41.  
  42. -B        Does not pause after evry 5th error to ask wether the
  43.         compiler should continue.
  44.  
  45. -Dsymbol    Defines a symbol for preprocessor.
  46.  [=value]    
  47.  
  48. -Idir        Searches the directory dir for #include files.
  49.  
  50. -O file        Sends output to file.
  51.  
  52. -Q        Generates error messages to a file called Aztec-C.err.
  53.  
  54. -S        Does not print warning messages.
  55.  
  56. -T        Includes C-source statements in the assembly code output
  57.         as comments. Each source statement appears before the
  58.         assembly code it generates.
  59.  
  60. -Enum        Uses an exprssion table having num entries. 
  61.  
  62. -Lnum        Uses an local symbol table having num entries. 
  63.     
  64. -Ynum        Uses an case table having num entries. 
  65.  
  66. -Znum        Uses an literal table having num entries. 
  67.  
  68. Special options for Amiga
  69.  
  70. +B         Does not generate the statement public.begin.
  71.  
  72. +C        Generates code that uses large code memory model.
  73.         See 'Memory Models'.
  74.  
  75. +D        Generates code that uses large data memory model.
  76.         See 'Memory Models'.
  77.  
  78. +Hfile        Writes symbol table to file. Compile #include files
  79.         with this option for faster compiling of your *.c
  80.         files.
  81.  
  82. +Ifile        Reads precompiled symbol table from file. When you
  83.         compile a module, compiler ignores #include statements 
  84.         for header files that has precompiled to file. 
  85.  
  86. +L        int variables and constants are 32 bits wide. Defaults
  87.         they are 16 bits wide. Remeber to use c32.lib when
  88.         linking.
  89.  
  90. +Q        Puts character string constants in the data segment.
  91.         Defaults they are placed in code segment.
  92.  
  93.  
  94. +Xn        Extended options of the code generator, n indicates
  95.         option choise:
  96.  
  97.     +X1     Removes A6 from all lists; A6 does not exist for 
  98.         compiler.
  99.  
  100.     +X2    Places code in the data segment. 
  101.  
  102.     +X3    Delays the popping of arguments until it's neccessary.
  103.         Causes problems with DB backtrace command.
  104.  
  105.     +X4    Forces literal strings to be aligned on an even 
  106.         boundary.
  107.  
  108.     +X5    Generates in-line code for strcpy(),strcmp() and 
  109.         strcmp(), or as name used is preceded as
  110.  
  111.         _BUILTIN_strcopy(s1,s2);
  112.  
  113.         (this feature can be used by:
  114.         #define strcpy _BUILTIN_strcpy)
  115.  
  116.  
  117. Memory models
  118.  
  119. cc prog.c     small code, small data
  120.  
  121. cc +C prog.c     large code, small data
  122.  
  123. cc +D prog.c     small code, large data
  124.  
  125. cc +C +D prog.c large code, large data
  126.  
  127.         Remember to link your program with right libraries!
  128.         Default libs (c.lib/m.lib/ma.lib) are for small code,
  129.         small data memory model and 16 bit integers only.
  130.  
  131.  
  132. Assembler: as
  133.  
  134. Assembler is normally invoked by compiler;
  135. to invoke assembler yourself use command:
  136.  
  137. as [-options] prog.asm
  138.  
  139. Assembler options
  140.  
  141. +A        forces the total size of code & data to be aligned
  142.         to a longword boundary instead of the default word
  143.         boundary.
  144.  
  145. -C        Makes large code to default memory model. Near code and
  146.         far code directives can be used to override default
  147.         memory model.
  148.  
  149. -D        Makes large data to default memory model. Near data and
  150.         far data directives can be used to override default
  151.         memory model.
  152.  
  153. -Idir        Defines a dir to search include files.
  154.  
  155. -L        Generates listing.
  156.  
  157. -N        Does not optimize object code.
  158.  
  159. -O file        Send object code to file.
  160.  
  161. -Snum        Creates squeeze table to have num entries.
  162.  
  163. -V        Verbose option. Generates memory usage statistics.
  164.  
  165. -ZAP        Delete input file after processing. (Used by cc.)
  166.  
  167.  
  168. Linker: ln
  169.  
  170. Invoke linker by:
  171.  
  172. ln [-options] prog.o [module1-n.o] [lib1-n.lib]
  173.  
  174. Linker options
  175.  
  176. -A        Forces each module to be aligned on a longword
  177.         boundary, useful when you do someting with (UGH!)
  178.         BCPL pointers.
  179.  
  180. +C[cdb]        Forces loading into chip memory [sections specified: 
  181.         c=Code, d=Initialized Data and b=Uninitialized Data].
  182.  
  183. +F[cdb]        Forces loading into fast memory [sections specified: 
  184.         c=Code, d=Initialized Data and b=Uninitialized Data].
  185.  
  186. -F file        Reads arguments frim file.
  187.  
  188. -G, -Q        Tells the linker to generate a file for SDB, file name
  189.         is name_of_output_file.dbg
  190.  
  191. +L        Tells the linker that following object modules are 
  192.         really true Amiga object modules until next +L.         
  193.         Linker automatically detects that a module is an
  194.         Amiga object format but does not detect if it is a 
  195.         library (containing many modules).
  196.  
  197. -Lname        Searches for library name.lib.
  198.  
  199. -M        Disable linker warnings about symbols that override
  200.         symbols defined in library.
  201.  
  202. +O[i]        Places executable code in object modules that follow
  203.         in code segment i.
  204.  
  205. -O file     Writes the executable code to the file.
  206.  
  207. +SSS        Scatted loading: puts each module in the own hunk.
  208.  
  209. +SS        Scatted loading: joins modules until size of hunk
  210.         reached 8K.
  211.  
  212. +S        Scatted loading: puts modules in each file in the own
  213.         hunk.         
  214.  
  215.         Default is that there is no scatted loading.
  216.  
  217. -T        Generate ASCII symbol table.
  218.  
  219. -W        Generate Wack-readable symbol table.
  220.  
  221. -V        Be verbose
  222.  
  223.